1. Field of Invention
This invention relates to systems and methods for template matching of color images. More specifically, this invention relates to systems and methods for template matching for both continuous multi-plane color images and binary multi-plane color images for various applications.
2. Description of Related Art
A wide variety of digital document processing tasks are performed using template-based filters. Illustratively, digital document processing tasks include resolution conversion, restoration, appearance tuning and descreening of images. These tasks are commonly performed on monochrome and color images. The color images may be composed of multiple color-space planes, or color separation layers.
In conventional systems and methods, a typical template operator is provided to perform binary filtering of both monochrome and color images. The template operator observes an arrangement of pixel values using a suitable window. The template operator then vectorizes the binary pixel values observed in the window. As a result, a vector is obtained that represents the observed binary pixels. The vector is then used as a pointer to a look-up table. As a result, the look-up table generates an appropriate output.
In particular, various descreening methods have been devised for monochrome half-toned images, such as the method for descreening error diffused halftoned images described in M.Y. Ting et al., xe2x80x9cError Diffused Image Compression Using a Halftone-to-Grayscale Decoder and Predictive Pruned Tree-Structured Vector Quantization.xe2x80x9d IEEE Transactions on Image Processing, 3(6): 854-858, November 1994.
Illustratively, a 3xc3x973 window may be used to process a monochrome image. The 3xc3x973 window, at some location in a monochrome image, observes a block of binary-valued pixels. The 3xc3x973 window vectorizes the block of binary valued pixels.
The vector is expressed in the form (a1 a2 . . . a9). The vector is then used in the look-up table. Specifically, the vector may be input into a look-up table, the look-up table associates the input vector with some desired value, and then that desired value is output from the look-up table.
Alternatively, it may be desirable or necessary to descreen a cyan, magenta, yellow and black (CMYK) half-toned, device-dependent bitmap and convert it to device-independent space, for example. A conventional template operator may be used to process the full color CMYK image. Such a template operator for color images may also include a 3xc3x973 window. The 3xc3x973 window is conventionally used in an independent manner and utilizes four nine-pixel vectors (c1 c2 . . . c9), (m1 m2 . . . m9), (y1 y2 . . . y9), and (k1 k2 . . . k9).
U.S. Pat. No. 5,758,034 discloses an example of a method that processes color planes with templates in an independent manner. U.S. Pat. No. 5,758,034 describes vectors are used to index four look-up tables. Alternatively, in some applications, one look-up table may be indexed four times. This process results in generation of independent output values for each plane.
The look-up table is conventionally created using a training image or a set of training images. The book Restoration and Enhancement of Digital Documents by R. Loce and E. Dougherty teaches methods of designing templates based on training sets of images. The training image will occur in pairs. A pair of training images may include two members where one member is a xe2x80x9ctypically observed imagexe2x80x9d and the other is the xe2x80x9cideal image.xe2x80x9d The training image pairs are input into a computer program that acquires and analyzes pattern statistics between the two images.
Illustratively, one member of a set of training images is a binary half-toned image, while the other member is the original grayscale image prior to halftoning. In this case the xe2x80x9cobserved imagexe2x80x9d is the halftoned image, and the ideal output of a descreening filter would be the gray-scale image prior to halftoning. The conversion from a binary image to a grayscale image is typically referred to as a descreening process. For a given pattern that occurs in the binary image about a target pixel, a training analysis examines a target pixel at that corresponding location in the gray-scale image. The center of the window may be placed at the target, for example. Based on the set of gray pixels associated with different locations of the same binary pattern, a xe2x80x9cbest gray pixel valuexe2x80x9d is determined for the pixel at the center or xe2x80x9coriginxe2x80x9d of the given template, i.e., the target pixel. This analysis is performed for all binary patterns are understood to be significant, where significance may be due to its frequency of occurrence or its effect on the filtered image. Accordingly, if a certain template is observed and considered significant, the target pixel will be assigned a certain value. Thus, design of filters for processing color images can be performed using statistical optimization techniques or expert knowledge.
An alternative approach that is equivalent to using a look-up table representation is the Boolean logic representation. In the Boolean logic representation, pixel values are used as variables in a logic architecture, such as a logical sum of products. The goal of template filter design when using Boolean logic representation is to derive statistically optimized Boolean operators. In conventional systems and methods, the Boolean operators are optimized and employed on the color planes independently.
Accordingly, when tasks such as resolution conversion, restoration, appearance tuning and descreening are performed on monochrome or color images, a filter is often applied independently to each color plane. A filter may be characterized as an operator or device that transforms one image, i.e., a binary image, into another image, i.e., a grayscale image. As a result, each color plane is treated independently. However, the treatment of each color plane independently is often inappropriate. In particular, the conventional approach is inconsistent with the simultaneous use, e.g., viewing, of the resultant color planes.
Furthermore, in conventional methods, each template-based filter for a given color plane is usually designed without consideration for adverse plane-to-plane interactions. Such adverse plane-to-plane interactions might occur when trying to enhance edges of black text within a cyan field. Independent treatment of the color planes in this case can result in image artifacts, such as a white gap between the black and cyan regions. Other template-filter applications with independent treatment can exhibit different anomalies or overall sub-optimal performance.
Further, the conventional methods to perform independent descreening also have various problems. Specifically, conventional independent descreening does not use all the information that is available. As a result, a generated image is not as refined as it could be if more of the available information were used. Also, independently descreening the color planes does not enable spatial structural information to be used in subsequent color transformations.
Conventional techniques using image enhancement through template matching by independent processing the color planes results in deficiencies in the generated image. The deficiencies may include white gaps at the border of the color planes of the image, for example. It is known to generate color edges that overlap a small amount so that a misregistration in the printing process does not cause a white gap between the colors at one edge. This intentional overlap is referred to as xe2x80x9ctrapping.xe2x80x9d However, the conventional methods and techniques simply do not provide optimized use of template based filters when processing multicolored images. In particular, the conventional methods and techniques do not provide optimized use of template based filters when performing a descreening process on a multi-colored image.
Accordingly, this invention provides systems and methods that input multi-plane images and obtain associated vectors jointly across several planes instead of a single plane.
This invention separately provides systems and methods for simultaneous template matching across color planes.
This invention separately provides systems and methods that optimize the logic of template matching by using a joint multi-plane vector instead of a single plane vector.
This invention separately provides systems and methods that input a multi-plane vector from a given location within an input image and simultaneously generates an output for all color planes for the given image location using a jointly optimized look-up table.
This invention separately provides improved systems and methods that treat edges within two color planes in a compatible manner in a template matching process.
This invention separately provides systems and methods that use the color setting of the local structural information to perform optimized color space conversions.
This invention separately provides systems and for descreening a single color plane.
According to one embodiment of the systems and methods according to this invention, a descreening and color conversion technique is provided that respectively views one, two, three or four input binary color planes through an input observation window, for example, a 3xc3x973 window. The obtained single-plane vectors are combined into a multi-plane vector that may be used in a look-up table for descreening or other color conversion processes. As a result, various interactions between the color planes may be taken into account to provide, for example, optimum color space conversion. Specifically, because of the additional information obtained by using the multi-plane vector, the systems and methods of the invention provide a technique that performs color descreening, for example, with more accurate color values than the multiple, one-plane-at-a-time conventional methods.
These and other features and advantages of the systems and methods of this invention are described in or are apparent from the following detailed description of the exemplary embodiments.